Skip to content

chore: Dependency bumps#446

Open
sbernauer wants to merge 5 commits into
mainfrom
chore/bumps-2026-07-16
Open

chore: Dependency bumps#446
sbernauer wants to merge 5 commits into
mainfrom
chore/bumps-2026-07-16

Conversation

@sbernauer

@sbernauer sbernauer commented Jul 16, 2026

Copy link
Copy Markdown
Member

Description

  • Bump Rust crates
  • Fix new clippy lints
  • Bump Go stuff, but stay on Helm 3 for now
  • Installed e2e-sec demo as a test

Definition of Done Checklist

  • Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
  • Please make sure all these things are done and tick the boxes

Author

  • Changes are OpenShift compatible
  • CRD changes approved
  • Helm chart can be installed and deployed operator works
  • Integration tests passed (for non trivial changes)

Reviewer

  • Code contains useful comments
  • (Integration-)Test cases added
  • Documentation added or updated
  • Changelog updated
  • Cargo.toml only contains references to git tags (not specific commits or branches)

Acceptance

  • Feature Tracker has been updated
  • Proper release label has been added

@sbernauer sbernauer changed the title chore: Rust dependency bumps chore: Dependency bumps Jul 16, 2026
@sbernauer
sbernauer marked this pull request as ready for review July 16, 2026 11:41
@sbernauer sbernauer self-assigned this Jul 16, 2026
Comment thread Cargo.toml

@NickLarsenNZ NickLarsenNZ left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, a few comments, no blockers.

pub fn bcrypt(kwargs: Kwargs, _: &State) -> TeraResult<String> {
let password = kwargs.must_get::<String>("password")?;
bcrypt::hash(password, DEFAULT_COST)
.map_err(|err| tera::Error::message(format!("Failed to create bcrypt hash: {err}")))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why don't we use .context()?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not a snafu error (it's tera::Error)

    bcrypt::hash(password, DEFAULT_COST)
        .with_context(|err| tera::Error::message(format!("Failed to create bcrypt hash: {err}")))

causes

error[E0277]: the trait bound `tera::Error: IntoError<_>` is not satisfied
    --> rust/stackable-cockpit/src/utils/templating.rs:37:10
     |
  37 |         .with_context(|err| tera::Error::message(format!("Failed to create bcrypt hash: {err}")))
     |          ^^^^^^^^^^^^ the trait `IntoError<_>` is not implemented for `tera::Error`
     |
note: there are multiple different versions of crate `snafu` in the dependency graph
    --> /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.9.1/src/lib.rs:1300:1
     |
1300 | pub trait IntoError<E>
     | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
     |
    ::: /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.8.9/src/lib.rs:1321:1
     |
1321 | pub trait IntoError<E>
     | ---------------------- this is the trait that was imported
     |
    ::: /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.6.10/src/lib.rs:584:1
     |
 584 | pub trait IntoError<E>
     | ---------------------- this is the trait that was imported
     = help: you can use `cargo tree` to explore your dependency tree
     = help: the following other types implement trait `IntoError<E>`:
               InvalidLabelValueSnafu
               InvalidRegexSnafu
               InvalidRfc1035LabelNameSnafu
               InvalidRfc1123DnsSubdomainNameSnafu
               InvalidRfc1123LabelNameSnafu
               InvalidUidSnafu
               LengthExceededSnafu<__T0, __T1>
               MinimumLengthNotMetSnafu<__T0, __T1>
               RegexNotMatchedSnafu<__T0, __T1>
note: required by a bound in `snafu::ResultExt::with_context`
    --> /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.9.1/src/lib.rs:675:12
     |
 672 |     fn with_context<F, C, E2>(self, context: F) -> Result<T, E2>
     |        ------------ required by a bound in this associated function
...
 675 |         C: IntoError<E2, Source = E>,
     |            ^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ResultExt::with_context`

error[E0277]: the trait bound `tera::Error: ErrorCompat` is not satisfied
    --> rust/stackable-cockpit/src/utils/templating.rs:37:10
     |
  37 |         .with_context(|err| tera::Error::message(format!("Failed to create bcrypt hash: {err}")))
     |          ^^^^^^^^^^^^ the trait `ErrorCompat` is not implemented for `tera::Error`
     |
note: there are multiple different versions of crate `snafu` in the dependency graph
    --> /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.9.1/src/lib.rs:1184:1
     |
1184 | pub trait ErrorCompat {
     | ^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
     |
    ::: /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.8.9/src/lib.rs:1205:1
     |
1205 | pub trait ErrorCompat {
     | --------------------- this is the trait that was imported
     |
    ::: /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.6.10/src/lib.rs:474:1
     |
 474 | pub trait ErrorCompat {
     | --------------------- this is the trait that was imported
     = help: you can use `cargo tree` to explore your dependency tree
     = help: the following other types implement trait `ErrorCompat`:
               &'a E
               Box<E>
               BucketError
               ConnectionError
               ConvertObjectError
               CrdEstablishedError
               DurationParseError
               FlaskAppConfigWriterError
             and 89 others
note: required by a bound in `snafu::ResultExt::with_context`
    --> /home/sbernauer/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/snafu-0.9.1/src/lib.rs:676:21
     |
 672 |     fn with_context<F, C, E2>(self, context: F) -> Result<T, E2>
     |        ------------ required by a bound in this associated function
...
 676 |         E2: Error + ErrorCompat;
     |                     ^^^^^^^^^^^ required by this bound in `ResultExt::with_context`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `stackable-cockpit` (lib) due to 2 previous errors

Comment thread Cargo.toml
#[snafu(display("failed to create Kubernetes client"))]
KubeClientCreate { source: kube::error::Error },
KubeClientCreate {
#[snafu(source(from(kube::error::Error, Box::new)))]

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious why we have to add so much noise when it used to just work.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New clippy lint warns more aggressive on big error enums.

when it used to just work.

It works before and after, but It's now failing quicker 🚀 Jokes aside, there is a reason that clippy lint exists and I could either silence it in multiple places or just fix the underlying issue by boxing big errors (claude did the repetitive work)

@NickLarsenNZ NickLarsenNZ moved this from Development: Waiting for Review to Development: In Review in Stackable Engineering Jul 16, 2026
@sbernauer
sbernauer requested a review from NickLarsenNZ July 17, 2026 07:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Development: In Review

Development

Successfully merging this pull request may close these issues.

2 participants